Component({
  // 组件的属性列表
  properties: {
    // 初始的购买数量
    'value': { // 属性名
      type: Number, // 类型（必填），目前接受的类型包括：String, Number, Boolean, Object, Array, null（表示任意类型）
      value: 1 // 属性初始值（可选），如果未指定则会根据类型选择一个
    },
    // 库存
    'ku_cun': { // 属性名
      type: Number, // 类型（必填），目前接受的类型包括：String, Number, Boolean, Object, Array, null（表示任意类型）
      value: 1 // 属性初始值（可选），如果未指定则会根据类型选择一个
    },
    // 是否可以输入
    'disabled': { // 属性名
      type: Boolean, // 类型（必填），目前接受的类型包括：String, Number, Boolean, Object, Array, null（表示任意类型）
      value: false // 属性初始值（可选），如果未指定则会根据类型选择一个
    },
  },
  // 组件的初始数据
  data: {
    focus: false,
    // 是否打开弹框
    tan_kuang: false,
    // 弹框中的购买数量
    tk_value: "",
  },
  // 组件的方法列表
  methods: {
    // 打开输入框弹框
    open_input() {
      this.setData({
        tk_value: this.data.value,
        tan_kuang: true,
        focus: true,
      })
    },
    // 关闭输入框弹框
    close_input() {
      this.setData({
        tan_kuang: false,
      })
    },
    // 数量-1
    jian_fun() {
      var tan_kuang = this.data.tan_kuang;
      if (tan_kuang) {
        var value = this.data.tk_value;
      } else {
        var value = this.data.value;
      }
      value -= 1;
      if (value <= 0) {
        value = 1;
      }
      if (tan_kuang) {
        this.setData({
          tk_value: value
        });
      } else {
        this.setData({
          value: value
        });
        this.chu_fa_fun("jian_fun", value);
      }
    },
    // 输入数量
    input_fun(e) {
      var ku_cun = this.data.ku_cun - 0;
      var tk_value = e.detail.value;
      // 如果大于库存
      if (tk_value > ku_cun) {
        tk_value = ku_cun;
        wx.showToast({
          title: "库存不足",
          icon: "none",
        })
      }
      this.setData({
        tk_value: tk_value
      });
    },
    // 数量+1
    jia_fun() {
      var ku_cun = this.data.ku_cun - 0;
      var tan_kuang = this.data.tan_kuang;
      if (tan_kuang) {
        var value = this.data.tk_value;
      } else {
        var value = this.data.value;
      }
      // 如果小于库存再+1;
      if (value < ku_cun) {
        value += 1;
      } else {
        wx.showToast({
          title: "库存不足",
          icon: "none",
        })
        value = ku_cun;
      }
      if (tan_kuang) {
        this.setData({
          tk_value: value
        });
      } else {
        this.setData({
          value: value
        });
        this.chu_fa_fun("jia_fun", value);
      }
    },
    // 点击确定
    que_ding_fun() {
      var tk_value = this.data.tk_value;
      console.log(tk_value);
      if (tk_value) {
        if (tk_value - 0) {
          this.setData({
            value: tk_value
          })
          this.chu_fa_fun("input_fun", tk_value);
          this.close_input();
        } else {
          this.close_input();
        }
      } else {
        wx.showToast({
          title: "请输入购买数量",
          icon: "none",
        })
      }
    },
    // 触发函数
    chu_fa_fun(fun, value) {
      var myEventDetail = {
        value: value
      } // detail对象，提供给事件监听函数
      var myEventOption = {} // 触发事件的选项
      this.triggerEvent(fun, myEventDetail, myEventOption)
    },
  }
})